// var t1 = process.hrtime();
// var n = 1;
// for(let i = 1;i<100;i++){
//     n*=i;
// }
// var t2 = process.hrtime(t1);
// console.log("耗时(纳秒):",t2[1]);

// var buffer = Buffer.alloc(1572864,0);
var fs = require("fs");
var zlib = require("zlib");
// fs.writeFileSync("./a.txt",buffer.toString("utf-8"));


// var rf1= fs.readFileSync("./a.txt");
// fs.writeFileSync("./a1.txt",rf1);
// fs.readFile("./a.txt",(err,data)=>{
//     fs.writeFileSync("./a1.txt",data);
// });
// var read = fs.createReadStream("./a.txt");
// var writes = fs.createWriteStream("./a4.txt.zip");
// read.pipe(zlib.createGzip()).pipe(writes);
// var t2 = process.hrtime(t1);
// console.log("耗时(纳秒):",t2[1]);

var event = require("events");
// var myevent = new event();
// myevent.on("test",()=>{
//     console.log("事件触发")
// })
// var tree = new event();
// tree.addListener("sow",()=>{
//     setTimeout(()=>{
//         console.log("种子被种下了!");
//     },1000);
//     setTimeout(()=>{
//         console.log("雨水滋润了土壤!");
//         tree.emit("grow")
//     },2000);
    
// });
// tree.addListener("grow",()=>{
//     setTimeout(()=>{
//         console.log("土地在松动!");
//     },1000);
//     setTimeout(()=>{
//         console.log("嫩芽破土而出!");
//         tree.emit("mature")
//     },2000);
   
// });
// tree.addListener("mature",()=>{
//     setTimeout(()=>{
//         console.log("阳光照射!");
//     },1000);
//     setTimeout(()=>{
//         console.log("枝茎愈发粗壮!");
//     },2000);
//     setTimeout(()=>{
//         console.log("参天大树拔地而起!");
//     },3000);
// });
// tree.emit("sow");

// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
// process.on("exit",()=>{
//     console.log("触发exit事件");
// })
process.on("exit",()=>{
    console.log("触发exit事件");
})

process.stdout.write("请输入一个数");
process.stdin.on("data",(result)=>{
    let s = 1;
    for(let i=1;i<result;i++){
        s*=i;
    }
    console.log(parseInt(result)+"! = "+s);
    process.exit();
})


